load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test")

go_library(
    name = "go_default_library",
    srcs = [
        "apply_cluster.go",
        "bootstrapchannelbuilder.go",
        "defaults.go",
        "dns.go",
        "loader.go",
        "networking.go",
        "phase.go",
        "populate_cluster_spec.go",
        "populate_instancegroup_spec.go",
        "spec_builder.go",
        "subnets.go",
        "tagbuilder.go",
        "target.go",
        "template_functions.go",
        "urls.go",
        "utils.go",
    ],
    importpath = "k8s.io/kops/upup/pkg/fi/cloudup",
    visibility = ["//visibility:public"],
    deps = [
        "//:go_default_library",
        "//channels/pkg/api:go_default_library",
        "//dns-controller/pkg/dns:go_default_library",
        "//dnsprovider/pkg/dnsprovider:go_default_library",
        "//dnsprovider/pkg/dnsprovider/providers/aws/route53:go_default_library",
        "//dnsprovider/pkg/dnsprovider/rrstype:go_default_library",
        "//pkg/apis/kops:go_default_library",
        "//pkg/apis/kops/registry:go_default_library",
        "//pkg/apis/kops/util:go_default_library",
        "//pkg/apis/kops/validation:go_default_library",
        "//pkg/apis/nodeup:go_default_library",
        "//pkg/assets:go_default_library",
        "//pkg/client/simple:go_default_library",
        "//pkg/client/simple/vfsclientset:go_default_library",
        "//pkg/dns:go_default_library",
        "//pkg/featureflag:go_default_library",
        "//pkg/k8sversion:go_default_library",
        "//pkg/model:go_default_library",
        "//pkg/model/alimodel:go_default_library",
        "//pkg/model/awsmodel:go_default_library",
        "//pkg/model/components:go_default_library",
        "//pkg/model/components/etcdmanager:go_default_library",
        "//pkg/model/components/node-authorizer:go_default_library",
        "//pkg/model/domodel:go_default_library",
        "//pkg/model/gcemodel:go_default_library",
        "//pkg/model/openstackmodel:go_default_library",
        "//pkg/model/spotinstmodel:go_default_library",
        "//pkg/model/vspheremodel:go_default_library",
        "//pkg/resources/digitalocean:go_default_library",
        "//pkg/resources/spotinst:go_default_library",
        "//pkg/templates:go_default_library",
        "//pkg/util/subnet:go_default_library",
        "//upup/models:go_default_library",
        "//upup/pkg/fi:go_default_library",
        "//upup/pkg/fi/assettasks:go_default_library",
        "//upup/pkg/fi/cloudup/alitasks:go_default_library",
        "//upup/pkg/fi/cloudup/aliup:go_default_library",
        "//upup/pkg/fi/cloudup/awstasks:go_default_library",
        "//upup/pkg/fi/cloudup/awsup:go_default_library",
        "//upup/pkg/fi/cloudup/baremetal:go_default_library",
        "//upup/pkg/fi/cloudup/cloudformation:go_default_library",
        "//upup/pkg/fi/cloudup/do:go_default_library",
        "//upup/pkg/fi/cloudup/dotasks:go_default_library",
        "//upup/pkg/fi/cloudup/gce:go_default_library",
        "//upup/pkg/fi/cloudup/gcetasks:go_default_library",
        "//upup/pkg/fi/cloudup/openstack:go_default_library",
        "//upup/pkg/fi/cloudup/openstacktasks:go_default_library",
        "//upup/pkg/fi/cloudup/spotinsttasks:go_default_library",
        "//upup/pkg/fi/cloudup/terraform:go_default_library",
        "//upup/pkg/fi/cloudup/vsphere:go_default_library",
        "//upup/pkg/fi/cloudup/vspheretasks:go_default_library",
        "//upup/pkg/fi/fitasks:go_default_library",
        "//upup/pkg/fi/loader:go_default_library",
        "//upup/pkg/fi/utils:go_default_library",
        "//util/pkg/hashing:go_default_library",
        "//util/pkg/reflectutils:go_default_library",
        "//util/pkg/vfs:go_default_library",
        "//vendor/github.com/blang/semver:go_default_library",
        "//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
        "//vendor/k8s.io/apimachinery/pkg/util/sets:go_default_library",
        "//vendor/k8s.io/klog:go_default_library",
    ],
)

go_test(
    name = "go_default_test",
    size = "small",
    srcs = [
        "bootstrapchannelbuilder_test.go",
        "deepvalidate_test.go",
        "defaults_test.go",
        "dns_test.go",
        "networking_test.go",
        "populatecluster_test.go",
        "populateinstancegroup_test.go",
        "subnets_test.go",
        "tagbuilder_test.go",
        "validation_test.go",
    ],
    data = [
        "//upup/pkg/fi/cloudup/tests:exported_testdata",  # keep
    ],
    embed = [":go_default_library"],
    deps = [
        "//pkg/apis/kops:go_default_library",
        "//pkg/apis/kops/validation:go_default_library",
        "//pkg/assets:go_default_library",
        "//pkg/client/simple/vfsclientset:go_default_library",
        "//pkg/diff:go_default_library",
        "//pkg/kopscodecs:go_default_library",
        "//pkg/model:go_default_library",
        "//pkg/templates:go_default_library",
        "//pkg/testutils:go_default_library",
        "//upup/models:go_default_library",
        "//upup/pkg/fi:go_default_library",
        "//upup/pkg/fi/cloudup/awsup:go_default_library",
        "//upup/pkg/fi/fitasks:go_default_library",
        "//util/pkg/vfs:go_default_library",
        "//vendor/k8s.io/apimachinery/pkg/util/sets:go_default_library",
        "//vendor/k8s.io/klog:go_default_library",
    ],
)
